Conventional analogue loudspeakers rely for their operation on the motion of a diaphragm which is driven by some type of electromechanical motor, moving coil being the most common, though electrostatic, piezoelectric and ionisation devices have all been tried and used. The analogue loudspeaker as a whole attempts to reproduce the desired sound by moving all or part of the diaphragm closely in synchronism with a smoothly varying analogue electrical signal which is usually interpreted as representing the instantaneous sound pressure that a listener to the loudspeaker device should hear. The inherent limitations of such analogue loudspeakers are related to: the stiffness of the diaphragms used, the mass of the diaphragms, the linearity and efficiency of and power available from electromechanical motors with adequate bandwidth and limitations on the throw of the diaphragm. These and other factors combine to cause the analogue loudspeaker to operate with low efficiency and relatively high distortion levels.
With the current prevalence of high quality digital audio material available, frequently in 16-bit binary format with an inherent distortion level of close to 0.002%, it is clear that analogue hi-fidelity loudspeaker systems operating close to the 1% distortion level (500 times worse) are now the limiting factor in audio quality when listening to reproduced sound (including radio, television, compact discs (CD), and digital tape). Recent trends in electronic equipment have also been to minimise power consumption, not only to reduce power wastage, but also to reduce equipment operating temperatures thus allowing miniaturisation and high reliability, as well as portability, and allowing operation from small batteries. Again, the linear analogue power amplifier/loudspeaker combination operating at the 0.3% to 1% efficiency level is out of step with these trends. Lastly, even though digital audio source material is now commonplace and becoming increasingly so with the advent of digital radio and television, all conventional hi-fidelity systems for the reproduction of digital source material need to contain a digital to analogue converter (DAC) at some point in the system, to produce analogue signals for application to the analogue loudspeaker. The DACs themselves produce further noise and distortion that adds to that already present in the system, and also add extra cost.
Attempts have been made to develop a digital loudspeaker design that overcomes some or all of the limitations of analogue loudspeakers mentioned above. These fall into several categories: Pseudo-digital loudspeakers comprising a digital signal processor driving a standard analogue loudspeaker; Moving Coil Digital Loudspeakers with tapped “voice-coils”; and piezoelectric and electrostatic drivers, where the area of the diaphragm is divided into separate regions with binary-related areas
Pulse-width-modulation (PWM) has also been used in the context of “digital loudspeakers”. Here an analogue or digital input signal is converted into a two-level (binary in some sense) digital waveform whose instantaneous mark-space ratio is proportional to the instantaneous value of the input signal, with 50% mark-space ratio corresponding to zero input signal. The frequency of the PWM waveform may or may not be constant, but needs to be much higher than the highest input frequency, and for audio applications this implies it must in practice be greater than about 40 KHz. So long as that criterion is satisfied, the actual frequency is not critical. With a digital input signal, it is possible to produce a PWM waveform entirely digitally. However, when it comes to producing sound output, the PWM signal is applied to conventional linear transducers (e.g. moving coil loudspeakers). The result is that the inertia of the transducer causes it to respond to the average value of the PWM waveform (which instantaneously is the same as the mark-space ratio) which in turn is equal to the instantaneous value of the input signal. Sound is then produced corresponding to the input audio signal. As the device relies on the linearity of the transducer, this system has all of the disadvantages of analogue loudspeakers plus some extra ones related to the PWM conversion process, and so is really a digital amplifier technology, not a digital loudspeaker technology. It does have the virtue of higher efficiency than linear amplification.
Most previous attempts at building a digital loudspeaker system have assumed that binary digital code was the digital signal medium, not only at the input of the device but also right through to the output transducers. This causes serious technical problems in practice.
In an n-bit system, the transducer used for the least significant bit (LSB) of the output operates at a power level 2.sup.n-2 times less than the most significant bit (MSB) (discounting an assumed sign bit included in the n-bits). In an 8-bit system (the least that is useful for reasonable sound reproduction) there is thus a 64 times power ratio between MSB and LSB transducers. Because of the necessarily mechanical nature of sound producing devices (sound is a mechanical movement of air) this wide dynamic range imposes serious design constraints on the types of devices used for LSB and MSB transducers, and thus makes matching of the devices very difficult—the problems are much worse when one considers a more realistic 10 or 12 bit system where the ratios in power levels between the MSB and LSB transducers are then of the order of 250 to 1000 times, and for a 16-bit system the ratio rises to greater than 16000.
In a binary-weighted transducer (or transducer-array) system, there are serious transient problems caused at points where the code changes from a value with many consecutive low order zeroes or ones to the next level (up or down) where there are many consecutive low order ones or zeroes. For example, consider a 9-bit binary code where the signal level changes from (decimal) 255.sub.10=(binary) 011111111.sub.2 to (decimal) 256.sub.10=(binary) 100000000.sub.2. At this transition, the signal itself has changed by one least significant bit, i.e. a very small change. The binary code representation has changed from a zero plus all-ones code to a one-and-all-zeroes code. The effect of this on a system where the code bits each drive binary weighted transducers (and also binary weighted transducer-arrays as described in U.S. Pat. No. 4,515,997 which does not address this problem) is that in the first state all transducers except the most significant will be on, and in the second state all will be off except for the most-significant. Thus two half full-power acoustic transitions occur at this code point change which will inevitably produce considerable sound energy, even though the code change represents only a least significant bit change in signal amplitude which normally would be expected to be nearly inaudible. Other such ones-to-zeroes and zeroes-to-ones transitions occur throughout the signal amplitude range, and become more of a problem as the total number of bits increases, as the power of the transient increases relative to the system's least significant bit power level. Thus, increasing the resolution of the system by adding more bits makes the problem worse, not better.
In addition to the switching transient problem outlined above, there is also a level error associated with such zeroes-to-ones and ones-to-zeroes code changes. This is because in a real system the transducers cannot easily be matched precisely enough that the most significant bit transducer is precisely one least significant bit greater in effective power or amplitude than the sum of all the lesser-bit transducers acting in concert. The same is also true to a smaller extent for the next most significant bit transducer and its lesser-bit transducers acting in concert. Such unavoidable errors can in practice easily dominate the accuracy of the system and quite independently of the transient effects described above can lead to large distortion components. In a binary weighted transducer or transducer-array system (as described in U.S. Pat. No. 4,515,997 which does not address this problem either), only extreme mechanical precision can eliminate this problem even in principle, which will inevitably lead to high manufacturing costs even if the precision required is achievable. In practice, the transducers will necessarily be spatially separated and the matching problems at such transition points then become intractable. In a 16-bit system, compatible with current digital audio standards, it is highly unlikely that the necessary precision could be achieved at any cost.
Another problem not adequately addressed by existing digital loudspeaker designs is that of transducer dynamics and appropriate drive waveforms for producing the desired acoustic sound output waveform. All previous designs appear to make the assumption that the application of a square drive pulse (of voltage or current as appropriate) to the output transducers will produce a square acoustic output pulse. This is almost never the case in practice and leads to serious distortion in the generated acoustic waveform. For example, in the common case where the transducer moving mass is the dominant factor, and the principal forces to be overcome are inertial, then the application of a square drive pulse to such a transducer will produce approximately constant acceleration of the diaphragm which in turn will produce, to first approximation, a triangular or ramped acoustic output pulse, which will continue after the end of the input drive pulse at approximately constant amplitude as the diaphragm continues to “coast” due to its inertia. For the other common case where the diaphragm restoring spring forces are the dominant factor, then the application of a square drive pulse to such a transducer will produce a very rapid initial acceleration of the diaphragm causing it to move quickly to the point where the spring restoring force equals the driving force after which it will overshoot (depending on the damping of the system), and then settle around that point of equilibrium, after which the end of the drive pulse will produce a similar velocity profile in reverse. This motion will produce, to first approximation, a pair of narrow impulsive spike acoustic output pulses of opposite sign, separated by a time interval approximately equal to the input driving pulse length. Only in the case where the dominant forces on the moving mass of the transducer are resistive (e.g. due to friction or viscosity of the air being moved by the diaphragm) will its motion be of approximately constant velocity when driven by a square drive pulse, and only in this case will the output acoustic pulse be approximately of square pulse waveform. What this means in practice is that electrostatic transducers with exceptionally light diaphragms (which constitute the only moving mass in this type of transducer) are the only devices where a square drive pulse might be expected to produce an approximately square acoustic output pulse.
Definition of Terms used in the Description & Claims
A digit is a single symbol representing a unique integer number. A decimal digit can take on any of the ten values 0, 1, 2, 3, . . . , 8, 9. Decimal integer positional notation uses the normal convention that digits within a decimal number represent factors times powers of ten, with the right hand digit representing a factor times 10.sup.0=1, the 2nd digit from the right a factor times 10.sup.1=10, the 3rd digit from the right a factor times 10.sup.2=100, etc. The value of the number represented by the decimal positional code is the sum of the factors times each of their respective powers of ten. So, e.g.357.sub.10=3.times.10.sup.2+5.times.10.sup.1+7.times.10.sup.0=300+50+7=357−.
A binary digit can take on either of the two values 0, 1. Binary integer positional notation is similar to decimal integer positional notation except powers of two are used instead of powers of ten. Thus the 4th binary digit from the right in a binary positional integer represents a factor of 1 or 0 times 2.sup.3. So, e.g.11010.sub.2=1.times.2.sup.4+1.times.2.sup.3+0.times.2.sup.2+1.times.2.sup.−1+0.times.2.sup.0=16.sub.10+8.sub.10+0+2.sub.10+0=26.sub.10
A unary digit can also take on any of the two values 0, 1 or alternatively can be defined to take on only the single value 1, and its absence is then used to represent 0 somewhat as in Roman Numeral notation. Unary integer positional notation is similar to binary or decimal positional notation except that integer powers of one are used instead of powers of 2 or 10. As all positive integer powers of 1 are equal to 1, it is clear that with a unary representation, all digits have equal weight, and that weight is unity and that the position of a unary digit in a unary positional notation number is irrelevant, only its value of 1 or 0, or alternatively, its presence or absence, having any significance. Thus the 4th unary digit from the right in a unary positional integer represents a factor of 1 or 0 times 1.sup.3=1, and the first unary digit at the right represents a factor of 1 or 0 times 1.sup.0=1. So, e.g.11010.sub.1=1.times.1.sup.4+1.times.1.sup.3+0.times.1.sup.2+1.times.1.sup.−1+0.times.1.sup.0=1.sub.10+1.sub.10+0+1.sub.10+0=3.sub.10,
which is just the number of 1-digits in the number. Thus digit position becomes irrelevant in unary numbers. It is for this reason that the 0 is not needed since its use as place-keeper in positional notations is irrelevant in the unary case. Thus we may just as precisely write the number 11010.sub.1 as 111.sub.1 with both representations having the decimal value 3.sub.10. Unary numbers are simply a formal name for the marks people frequently use for tallying when, e.g. counting items. It is important to realize that in unary representation it is the number of one-digits that matters, not the position of the one-digits. Note also that an unsigned N digit unary code can represent N+1 different values, because zero is represented by all the unary digits being 0 or absent and does not need an additional unary digit. A signed N digit unary code where one particular digit is reserved to represent the sign of the number (e.g. 0 for positive, 1 for negative) can represent 2N−1 values (i.e. 0 and .+−.1 to .+−.N−1). It follows, that where a digital signal is to be represented in unary code, that a unipolar signal that can take on N distinct levels can be represented by N−1 unary digits. This is to be compared with binary notation where N−1 binary digits are able to represent as many as 2.sup.N−1 distinct levels. Unary representation therefore requires many more digits than binary representation to represent a given range of values, just as binary representation requires many more digits than decimal representation to represent a given range of values.
Terminology: There is no special name for decimal digits. It is conventional to abbreviate the phrase binary digit to bit. Similarly, it is conventional to abbreviate unary digit to unit. However, as the word unit is easily confused in this unfamiliar role with its more conventional meaning, we use the phrase unary digit.